Vehicle driver identification using portable device

ABSTRACT

A network device associates a fleet vehicle with a driver of it. The network device receives customer input associating a group of media access control (MAC) addresses of portable devices with driver identifiers and stores, in a memory, the MAC addresses associated with the driver identifiers. The network device also receives, from a vehicle telematics unit, a vehicle identifier of a vehicle connected to the vehicle telematics unit and a MAC address of a particular portable device proximate the vehicle. Based on the MAC address of the particular portable device, the network device associates a particular driver identifier and the vehicle identifier. The vehicle telematics unit may determine that driver is no longer driving when it can no longer detect a signal from the particular portable device that was proximate the vehicle.

BACKGROUND

Vehicle manufacturers are required to install on-board diagnostic (e.g.,OBD-II) systems on light-duty automobiles and trucks. On-boarddiagnostic systems monitor a vehicle's electrical and mechanical systemsand generate data that can be processed by a vehicle's engine controlunit (ECU) to detect any malfunction or deterioration in the vehicle'sperformance. Most ECUs transmit status and diagnostic information over ashared, standardized electronic bus in the vehicle. The bus effectivelyfunctions as an on-board computer network, with many processorstransmitting and receiving data via the bus. Data available from the ECUmay include vehicle speed, fuel level, engine temperature, intakemanifold pressure, etc.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 depicts an exemplary network environment in which systems and/ormethods described herein may be implemented;

FIG. 2 is a diagram of exemplary components of a device that maycorrespond to a portable device, a user device, or an application serverof the network depicted in FIG. 1;

FIG. 3 is a diagram of exemplary components of a vehicle telematics unitof the network depicted in FIG. 1;

FIG. 4 is a diagram of exemplary communications among devices in aportion of the network of FIG. 1;

FIG. 5 is a diagram illustrating a portion of an exemplary datastructure that may be provided by the application server from theservice database, according to an implementation described herein;

FIG. 6 is a flow chart of an exemplary process of associating a driverwith a fleet vehicle according to an implementation described herein;and

FIG. 7 is an illustration of an exemplary association process describedin FIG. 6.

DETAILED DESCRIPTION

The following detailed description refers to the accompanying drawings.The same reference numbers in different drawings may identify the sameor similar elements.

While on-board diagnostic systems provide data for a particular vehicle,these systems do not associate the data with a particular driver. Infleet management systems, it is desirable to match on-board diagnosticdata with the driver using the particular vehicle. However, currentmethods to match a driver with vehicle on-board diagnostic datatypically require drivers to carry special equipment and/or performadditional registration actions.

Systems and methods described herein may use a wireless device, such asa Bluetooth™-enabled portable device, to uniquely identify drivers offleet vehicles. A media access control (MAC) address of a portabledevice may be registered with a fleet management system to associate adriver with the portable device. Each fleet vehicle may include avehicle telematics unit that may be equipped with a Bluetooth interfaceto discover the portable device when the portable device (e.g., set indiscoverable mode) is located in the vehicle. The vehicle telematicsunit may detect the MAC address (or another discoverable uniqueidentifier) of the portable device and may transmit the MAC address tothe fleet management system, where the MAC address may be paired withthe registered driver. The system and methods may thus passively (e.g.,without a particular action from the driver) associate the driver withthe fleet vehicle in order to support operational processes and metrics.

In one implementation, a method of passively pairing a fleet vehiclewith a driver is performed by a network device. The network devicereceives customer input associating a group MAC addresses of portabledevices with driver identifiers and stores, in a memory, the MACaddresses associated with the driver identifiers. The network devicealso receives, from a vehicle telematics unit, a vehicle identifier of avehicle connected to the vehicle telematics unit and a MAC address of aparticular portable device. Based on the MAC address of the particularportable device, the network device associates a particular driveridentifier and the vehicle identifier.

In another implementation, a vehicle telematics unit may include amemory to store a plurality of instructions, a wireless transceiver toreceive discovery signals for a wireless personal area network; awireless transceiver to transmit signals over a radio access networkthat is different than the wireless personal area network; and aprocessor. The processor may be configured to execute instructions inthe memory to detect, via the discovery signals for the wirelesspersonal area network, a MAC address of a portable device, and send, viathe radio access network and to a network device of a fleet managementsystem, the detected MAC address.

As used herein, the term “portable device” may generally refer to aconsumer electronics device that provides local wireless connectivitywith or without access to broadband cellular service. As used herein,the term “driver” may refer to a portable device user and/or one whobrings a portable device into a fleet vehicle. As used herein, the term“customer” may refer to an entity that receives driver/vehicle trackingservices from a service provider. As used herein the term “user” mayrefer particularly to an operator of a customer user device or, in somecontexts, an operator of any type of device.

FIG. 1 is an exemplary network environment 100 in which systems and/ormethods described herein may be implemented. As illustrated, networkenvironment 100 may include a portable device 110, a vehicle telematicsunit 120, a user device 130, an access network 140, a service network150, an application server 160, a service database 170, and a wirelesspersonal area network (WPAN) 180. Devices and/or networks of networkenvironment 100 may interconnect via wired and/or wireless links.

Portable device 110 may include a radiotelephone, a personalcommunications system (PCS) terminal (e.g., that may combine a cellularradiotelephone with data processing and data communicationscapabilities), a wireless device, a smart phone, a tablet, a personaldigital assistant (PDA) (e.g., that can include a radiotelephone, apager, Internet/intranet access, etc.), a laptop computer (e.g., with awireless air card), a global positioning system (GPS) device, a gamingdevice, a portable media player, a consumer electronics device, or othertypes of computation or communication devices. In an exemplaryimplementation, portable device 110 may be capable of communicating viaa local wireless network, such as WPAN 180. In implementations describedherein, portable device 110 may employ one or more short-range wirelesscommunication standards for WPAN 180. Portable device 110 may employ,for example, IEEE 802.15 (e.g., Bluetooth) discovery protocols orBluetooth-derivative protocols, although other local wireless networkprotocols that enable passive device discovery may be used.

Vehicle telematics unit 120 may include a data collection system,configured for installation in a vehicle, that receives data generatedby vehicle sensors and/or a vehicle electronic control unit (ECU).Vehicle telematics unit 120 may include a device that is capable ofcommunicating over access network 140 and/or service network 150.Vehicle telematics unit 120 may also be capable of communicating withportable device 110 via a short-range wireless network (e.g., WPAN 180).In implementations described herein, vehicle telematics unit 120 mayreceive information from portable device 110, vehicle sensors, and/orthe ECU and may transmit the information to service network 150 viaaccess network 140.

User device 130 may include a computational or communication device.User device 130 may enable a user to send/receive messages, viewcontent, and/or interact with other devices. For example, user device130 may include a personal computer (e.g., a laptop or desktop PC), atablet computer, a smart phone, or other types of computational orcommunication devices that can communicate with devices in servicenetwork 150. In one implementation, user device 130 may include a webbrowser or other software to enable user device 130 to access web sitesor other information from application server 160.

Access network 140 may include a communications network that connectssubscribed devices (e.g., vehicle telematics unit 120, user device 130,etc.) and devices in service network 150. Access network 140 maygenerally include a local area network (LAN), a wide area network (WAN),a metropolitan area network (MAN), a wireless network, an optical fiber(or fiber optic) network, or a combination of networks. In oneimplementation, access network 140 may include an IP-based network. Insome implementations, access network 140 may be a private networkcontrolled by, for example, a telecommunications company that providestelephone and/or data access to vehicle telematics unit 120. In anotherimplementation, access network 140 may be a public network, such as theInternet, or a combination of public and private networks. Generally,access network 140 may include at least one radio access network capableof supporting wireless communications to/from vehicle telematics unit120. The radio access network may include, for example, a long-termevolution (LTE) network, another 3rd Generation Partnership Project(3GPP) 3G/4G network, Global System for Mobile Communications (GSM),wideband code division multiple access (WCDMA), Ultra Mobile Broadband(UMB), Universal Mobile Telecommunications System (UMTS), Code DivisionMultiple Access 2000 (CDMA2000), High-Speed Packet Access (HSPA),Worldwide Interoperability for Microwave Access (WiMax), enhancedhigh-rate packet data (eHRPD), or a network implemented in accordancewith future wireless access network standards.

Service network 150 may include network devices (e.g., applicationserver 160, service database 170, and other devices) that provide abackend support system for facilitating fleet vehicle management,including vehicle driver identification. Service network 150 mayinclude, for example, one or more private Internet Protocol (IP)networks that use a private IP address space. Service network 150 mayinclude a local area network (LAN), an intranet, a private wide areanetwork (WAN), etc. In one implementation, service network 150 mayimplement one or more virtual private networks (VPNs) for providingcommunication between devices within service network 150. Servicenetwork 150 may be protected/separated from other networks, such asaccess network 140, by a firewall. Although shown as a single element inFIG. 1, service network 150 may include a number of separate networks.

Application server 160 may include one or more server devices, or othertypes of computation or communication devices that gather, process,search, and/or provide information in a manner described herein. In oneexemplary implementation, application server 160 may receive data fromvehicle telematics unit 120 and/or user device 130 and store theinformation in service database 170. For example, application server 160may receive a MAC address registration from user device 130 and/or a MACaddress identification from vehicle telematics unit 120. In anotherimplementation, application server 160 may retrieve information fromservice database 170 (e.g., in response to a query from user device 130)and provide the information to user device 130. Application server 160may be a distributed component.

In one example, application server 160 may provide, to user device 130,a web page to manage registration and storage of MAC addresses (or otherunique identifiers) that are associated with a portable device 110and/or a fleet vehicle driver. For example, application server 160 mayprovide an entry point for secure web portal for customers.Additionally, or alternatively, application server 160 may provide aweb-based application that user device 130 may use to submit the MACaddresses of portable devices and the vehicle driver identifiers. Instill another implementation, the web-based application may include autility to automatically detect MAC addresses of discoverable portabledevices 110 and selectively populate the MAC addresses into the userinterface of user device 130 (e.g., for eventual submission toapplication server 160).

Service database 170 may include a database or another data structure tostore data pertaining to a fleet management system. Service database 170may store, for example, driver registration information (e.g., driverID, MAC address, etc.), vehicle registration information, and historicaldata for fleet vehicle inquiries. In an exemplary implementation,service database 170 may include one data set for input (e.g., from userdevice 130) associating MAC addresses with driver identifiers andanother data set for input (e.g., from vehicle telematics unit 120)associating a vehicle telematics unit identifier with a vehicleidentifier. Service database 170 may also include historical records fortracked fleet drivers and/or fleet vehicles.

WPAN 180 may employ one or more short-range wireless communicationstandards for a wireless personal area network, such as a wirelessconnection with portable device 110. WPAN 180 may use, for example, IEEE802.15 (e.g., Bluetooth) standards or standards deriving therefrom. Inanother implementation, WPAN 180 may use different standards and/orprotocols to implement a short range wireless communication withportable device 110.

In FIG. 1, the particular arrangement and number of components ofnetwork environment 100 are illustrated for simplicity. In practicethere may be more portable devices 110, vehicle telematics units 120,user devices 130, access networks 140, service networks 150, applicationservers 160, service databases 170, and/or WPANs 180. For example, theremay be thousands of portable devices 110 and/or vehicle telematics units120.

FIG. 2 is a diagram illustrating exemplary components of a device 200.Each of portable device 110, user device 130, and application server 160may be implemented/installed as a combination of hardware and softwareon one or more of devices 200. As shown in FIG. 2, device 200 mayinclude a bus 210, a processing unit 220, a memory 230, one or moreinput devices 240, one or more output devices 250, and a communicationinterface 260.

Bus 210 may permit communication among the components of device 200.Processing unit 220 may include one or more processors ormicroprocessors that interpret and execute instructions. In otherimplementations, processing unit 220 may be implemented as or includeone or more application specific integrated circuits (ASICs), fieldprogrammable gate arrays (FPGAs), or the like.

Memory 230 may include a random access memory (RAM) or another type ofdynamic storage device that stores information and instructions forexecution by processing unit 220, a read only memory (ROM) or anothertype of static storage device that stores static information andinstructions for the processing unit 220, and/or some other type ofmagnetic or optical recording medium and its corresponding drive forstoring information and/or instructions.

Input device 240 may include a device that permits a user to inputinformation to device 200, such as a keyboard, a keypad, a mouse, a pen,a microphone, one or more biometric mechanisms, and the like. Outputdevice 250 may include a device that outputs information to the user,such as a display, a speaker, etc.

Communication interface 260 may include any transceiver-like mechanismthat enables device 200 to communicate with other devices and/orsystems. For example, communication interface 260 may include mechanismsfor communicating with other devices, such as other devices of networkenvironment 100. In one implementation, communications interface 260 maysupport short range wireless network communications (e.g., via Bluetoothprotocols). In another implementation, communications interface 260 maysupport long range wireless network communications (e.g., cellularnetwork services). In other implementations, communication interface 260may support other wired or wireless network communications.

As described herein, device 200 may perform certain operations inresponse to processing unit 220 executing software instructions storedin a computer-readable medium, such as memory 230. A computer-readablemedium may include a non-transitory tangible memory device. A memorydevice may be implemented within a single physical memory device orspread across multiple physical memory devices. The softwareinstructions may be read into memory 230 from another computer-readablemedium or read into memory 230 from another device via communicationinterface 260. The software instructions stored in memory 230 may causeprocessing unit 220 to perform processes described herein.Alternatively, hardwired circuitry may be used in place of or incombination with software instructions to implement processes describedherein. Thus, implementations described herein are not limited to anyspecific combination of hardware circuitry and software.

Although FIG. 2 shows exemplary components of device 200, in otherimplementations, device 200 may include fewer components, differentcomponents, differently-arranged components, or additional componentsthan those depicted in FIG. 2. As an example, in some implementations, adisplay may not be included in device 200. In these situations, device200 may be a “headless” device that does not include input device 240.Alternatively, or additionally, one or more components of device 200 mayperform one or more other tasks described as being performed by one ormore other components of device 200.

FIG. 3 is a block diagram of exemplary components of vehicle telematicsunit 120. As shown in FIG. 3, vehicle telematics units 120 may include amemory 300, an OBD interface 310, a processor 320, a power supply 330, acommunication interface 340, an antenna assembly 350, and a WPAN module360.

Memory 300 may include a RAM, a ROM, and/or another type of memory tostore data and instructions that may be used by processor 320.

OBD interface 310 may include a physical connector interface for usewith a vehicle's on-board diagnostic systems. For example, OBD interface310 may be configured to receive diagnostic and/or control informationfrom a vehicle's ODB-II system or another on-board diagnostic systemprotocol. In one implementation, OBD interface may also receive powerfrom the vehicle (e.g., a vehicle battery) to run vehicle telematicsunit 120. Vehicle telematics unit 120 may also be directly coupled tothe vehicle's communication bus, such as when a vehicle manufacturerinstalls the telematics unit when assembling the vehicle. In suchinstallations, vehicle telematics unit 120 does not need to couple viaan OBD-II connector.

Processor 320 may include one or more processors, microprocessors,application specific integrated circuits (ASICs), field programmablegate arrays (FPGAs), or other processing logic. Processor 320 maycontrol operation of vehicle telematics unit 120 and its othercomponents.

Power supply 330 may include one or more batteries or other power sourcecomponents used to supply power to components of vehicle telematics unit120. Power supply 330 may also include control logic to controlapplication of power from an external power source (e.g., a vehiclebattery) to one or more components of vehicle telematics unit 120.

Communication interface 340 may include a logical component thatincludes input and/or output ports, input and/or output systems, and/orother input and output components that facilitate the transmission ofdata to/from other devices. For example, communication interface 340 mayinclude a network interface card (e.g., Ethernet card) for wiredcommunications and/or a wireless network interface card for wirelesscommunications. Communication interface 240 may also include WPANinterface. The WPAN interface may include a Bluetooth interface oranother wireless interface that allows vehicle telematics unit 120 to“pair up” and communicate wirelessly with other devices, such asportable devices 110 that includes a Bluetooth interface. In anotherimplementation, the WPAN interface may detect WPAN discovery signalsfrom portable device 110 (e.g., when portable device 110 is in“discoverable” mode and proximate the vehicle) without actually pairingup. In other implementations, communication interface may also include auniversal serial bus (USB) port for communications over a cable, aradio-frequency identification (RFID) interface, a near-fieldcommunications (NFC) wireless interface, and/or any other type ofinterface that converts data from one form to another form.

Antenna assembly 350 may include one or more antennas to transmit and/orreceive RF signals over the air. Antenna assembly 350 may, for example,receive RF signals from communication interface 340 and transmit thesignals over the air and receive RF signals over the air and providethem to communication interface 340.

WPAN module 360 may include a logical component to support device MACaddress discovery. In other implementations, WPAN module may be includedas part of processor 320. Based on device discovery information receivedvia communication interface 340, WPAN module 360 may monitor theactivity of Bluetooth-enabled devices within signal range of vehicletelematics unit 120. For each Bluetooth-enabled device, WPAN module 360may detect, for example, a Bluetooth address (e.g., a MAC address), afirst detection time, and a last detection time. In otherimplementations, WPAN module 360 may also detect a device name, a devicetype, and/or other information.

Although FIG. 3 shows exemplary components of vehicle telematics unit120, in other implementations, vehicle telematics unit 120 may includefewer components, different components, differently-arranged components,or additional components than those depicted in FIG. 3. Alternatively,or additionally, one or more components of vehicle telematics unit 120may perform one or more other tasks described as being performed by oneor more other components of vehicle telematics unit 120.

FIG. 4 is a diagram of exemplary communications among components of aportion 400 of network environment 100 according to an implementationdescribed herein. Communications in FIG. 4 may illustrate process forassociating a driver with a fleet vehicle. As shown in FIG. 4, networkportion 400 may include portable device 110, vehicle telematics unit120, user device 130, and service network 150.

A user (e.g., a fleet network technician) may solicit a MAC address fora portable device 110 associated with a particular driver. In oneimplementation, the MAC address may be manually obtained by accessing asettings screen on portable device 110 or by viewing the MAC addressfrom a physical location (e.g., inside a battery cover) on portabledevice 110. In another implementation, user device 130 may be used todiscover the MAC address of portable device 110. In an exemplaryimplementation, user device 130 may be equipped with a Bluetoothinterface and a utility application to detect information (including aMAC address) from discoverable Bluetooth-enabled devices. A driveridentifier (ID) may be associated with the MAC address as a single datarecord. The driver identifier may include, for example, a driver name(or portion thereof), an employee number, or another unique identifier.

As indicated by reference number 410, user device 130 may send thedriver identifier and device MAC address to service network 150. Forexample, in one implementation, user device 130 may access a secure webportal through application server 160 that enables user device 130 toupload data into service database 170. Alternatively, user device 130may store the driver identifier and device MAC address locally (e.g., inmemory 230 or in another local network memory) and send only the MACaddress to service network 150.

Service network 150 may receive the driver identifier and device MACaddress. As indicated by reference 420, service network 150 may storethe driver identifier and device MAC address (e.g., in service database170).

Vehicle telematics unit 120 may transmit a vehicle identifier (ID) 430to service network 150. For example, vehicle telematics unit 120 mayretrieve a vehicle identification number (VIN) or another vehicleidentifier via OBD interface 310. Vehicle telematics unit 120 mayforward vehicle identifier 430 to application server 160 or servicedatabase 170 on a continuous basis, a periodic basis, or an event-drivenbasis (e.g., when a vehicle is turned on/off).

As directed, for example, by company policy, a driver may be required tocarry a Bluetooth-enabled device (e.g., portable device 110) that is setto a discoverable mode during a driver's working period. When a driver(with portable device 110) enters and/or starts a fleet vehicle, vehicletelematics unit 120 may retrieve a MAC address 440 from portable device110. In one implementation, portable device 110 may transmit MAC address440 as part of device information according to known Bluetooth discoveryprotocols. Thus, vehicle telematics unit 120 may receive MAC address 440without performing an actual pairing procedure with portable device 110.

Upon receiving MAC address 440, vehicle telematics unit 120 may forwardMAC address 440 to service network 150 (e.g., via access network 140).For example, in one implementation, communication interface 340 ofvehicle telematics unit 120 may transmit MAC address 440, along with anidentifier of vehicle telematics unit 120 and/or vehicle identifier 430,via cellular, satellite, or WAN network link.

Service network 150 may receive MAC address 440 and may match the MACaddress with the corresponding vehicle identifier, as indicated byreference number 450. For example, application server 160 may receiveMAC address 440 and, based on the identifier of vehicle telematics unit120 and/or vehicle identifier 430, may match MAC address 440 to thecurrent fleet vehicle being operated by the driver with portable device110. In one implementation, application server 160 may match the MACaddress to a driver identifier. Additionally, application server 160 maylog the MAC address and/or driver identifier in service database 170with additional vehicle data. For example, vehicle activity, such asspeed, acceleration, deceleration, routes, gas mileage, etc., may belogged to the particular driver for as long as the driver is in thevehicle. Logged data may include, for example, real-time and/orhistorical parameters.

In one implementation, service network 150 may receive multiple MACaddresses from a single vehicle telematics unit 120 (e.g., indicative ofmultiple portable devices 110 in a particular fleet vehicle). Servicenetwork 150 (e.g., application server 160) may determine if any of themultiple MAC addresses are associated with a particular driveridentifier in database 170. If the multiple MAC addresses can beassociated with only a single driver identifier, service network 150(e.g., application server 160) may discard unrecognized MAC addresses.If the multiple MAC addresses can be associated with multiple driveridentifiers, service network 150 (e.g., application server 160) maytrack vehicle data as associated with the multiple driver identifiersand/or MAC addresses. In an additional aspect, an application running onone or more of the portable devices 110 may perform an alert and requestthat a user select the MAC address associated with an individualactually driving, or otherwise operating, the vehicle. For example, ifvehicle telematics unit 120 detects multiple MAC addresses, vehicletelematics unit 120 may pair with one or more of portable devices 110 totrigger the application on portable device 110 to solicit a driverdevice indication. Alternatively, vehicle telematics unit 120 may causean interface (e.g., on a vehicle display or on vehicle telematics unit120) to manifest for a user or operator of the vehicle to select a MACaddress, or person, operating the vehicle.

FIG. 5 shows a diagram illustrating a portion of an exemplary datastructure 500 that may be provided by application server 160 fromservice database 170. Data structure 500 may generally include recordsfor associating fleet vehicle activity with a particular driver based ondata provided from portable device 110, vehicle telematics unit 120, anduser device 130. As shown in FIG. 5, data structure 500 may include avehicle telematics unit (VTU) identifier (ID) field 510, a vehicle IDfield 520, a MAC address field 530, a driver ID field 540, a login timefield 550, a vehicle data field 560, a logout time field 570, and avariety of entries 580 for fields 510-570. The portion of data structure500 shown in FIG. 5 may correspond to a single record for a particulardriver/vehicle combination.

VTU ID field 510 may include a unique identifier (e.g., “13yg-euy87”)for a vehicle telematics unit (e.g., vehicle telematics unit 120)providing data to service network 150. Vehicle ID field 520 may includea vehicle identification number (VIN) or another vehicle identifier ofthe vehicle to which vehicle telematics unit 120 is connected/installed.

MAC address field 530 may include the MAC address (e.g.,“00-0C-F1-88-98-AD”) of a portable device 110 that is detected byvehicle telematics unit 120. In one implementation, if MAC addressesfrom multiple devices are detected, MAC address field may includemultiple MAC addresses in MAC address field 530.

Driver ID field 540 may include a name, an employee identificationnumber, or other information to uniquely identify a fleet vehicle driverassociated with a MAC address. For example, a driver name (e.g., “Brown,J. P.”) may be inserted in driver ID field 540 based on information inMAC address field 530 and the stored driver ID and MAC address providedin FIG. 4 (ref. no. 420).

Login time field 550 may include a time that portable device 110 isinitially associated with a vehicle. For example, login time field 550may include a first detection time that vehicle telematics unit 120(e.g., WPAN module 360) identifies a MAC address of portable device 110.

Vehicle data field 560 may include data that may be collected by vehicletelematics unit 120 and associated with a particular MAC address (e.g.,from MAC address field 530) during a particular period (e.g., theinterval between the times in login time field 550 and logout time field570). Vehicle data field 560 may include, for example, speed,acceleration, deceleration, routes, gas mileage, and other vehicleactivity.

Logout time 570 may include a time that portable device 110 is no longerassociated with a vehicle. For example, logout time field 570 mayinclude a first detection time that vehicle telematics unit 120 (e.g.,WPAN module 360) identifies that portable device 110 is no longerdiscoverable by vehicle telematics unit 120. In one implementation, thelogout time may be based on a threshold number of consecutive faileddiscovery attempts of portable device 110. In another implementation,the logout time may be based on detection of a different portable device110.

Although FIG. 5 shows exemplary fields of data structure 500, in otherimplementations, data structure 500 may include different fields oradditional fields than those depicted in FIG. 5. For example, in otherimplementations data structure 500 may include a individual recordidentifier or other information.

FIG. 6 is a flow chart of an exemplary process of associating a driverwith a fleet vehicle according to an implementation described herein. Inone implementation, process 600 may be performed by application server160 and vehicle telematics unit 120. In other implementations, process600 may be performed by one or more other devices of network environment100, including or excluding vehicle telematics unit 120 and applicationserver 160. Process 600 is described with reference to components infigures described above and the sample data in FIG. 7.

As shown in FIG. 6, process 600 may include a service network receivinga MAC address and driver association from a customer (block 605) and theservice network storing the MAC address and driver association (block610). For example, a customer may provide a MAC addresses with a driveridentifier to application server 160. Application server 160 may receivethe input from user device 130 and store the MAC addresses with thedriver identifier in service database 170. In the example of FIG. 7, acustomer may submit “Driver ID 4” associated with “MAC 4.” As shown inFIG. 7, the MAC address and driver identifier (i.e., “MAC 4” and “DriverID 4”) may be stored with other driver identifiers and associated MACaddresses in a data structure 710.

Process 600 may also include the vehicle telematics unit sending avehicle telematics unit identifier (VTU ID) and a vehicle identifier tothe service network (block 615), and the service network receiving andstoring the vehicle telematics unit identifier and the vehicleidentifier (block 620). For example, vehicle telematics unit 120 mayperiodically transmit information to application server 160 to associatevehicle telematics unit 120 with a particular fleet vehicle. Applicationserver 160 may receive the input from vehicle telematics unit 120 andstore the vehicle telematics unit identifier and the vehicle identifierin service database 170. In the example of FIG. 7, vehicle telematicsunit 120 may submit “VTU ID 1” associated with “VIN 1.” As shown in FIG.7, the vehicle telematics unit identifier and vehicle identifier may bestored with other vehicle telematics unit identifiers and associatedvehicle identifiers in a data structure 720.

Also in process 600, the vehicle telematics unit may detect a fleetdriver's portable device (block 630) and may send the vehicle telematicsunit identifier (VTU ID) and the MAC address to the service network(block 635). For example, vehicle telematics unit 120 may detect, viadiscovery protocols for WPAN 180, the MAC address of portable device110. Vehicle telematics unit 120 may send to application server 160, thedetected MAC address along with the vehicle telematics unit identifier.As shown in FIG. 7, vehicle telematics unit 120 with an identifier of“VTU 1” may detect a portable device with a MAC address of “MAC 4” andmay submit a message 730 associating “VTU ID 1” with “MAC 4.”

Process 600 may further include the service network associating thedriver with the vehicle identifier based on the common MAC address(block 640), and logging vehicle activity as associated with the driver(block 645). For example, application server 160 may perform a lookup ofthe MAC address received from vehicle telematics unit 120 against thepreviously stored MAC addresses (e.g., as received from the customer viauser device 130) in service database 170. Assuming a match is found,application server 160 may associate the particular driver identifierand the vehicle identifier. As shown in FIG. 7, for example, applicationserver 160 may perform a lookup of “MAC 4” in data structure 710 and alookup of “VTU ID 1” in data structure 720. Based on the lookups,application server 160 may associate “Driver ID 4” with “VIN 1” inrecord 740.

Process 600 may also include the vehicle telematics unit failing todetect the portable device (block 650), the vehicle telematics unitsending a disconnect signal to the service network (block 655), and theservice network disassociating the driver and the fleet vehicle (block660). For example, vehicle telematics unit 120 may detect that a MACaddress (or other discovery information) of portable device 110 is notavailable for at least a threshold period and/or that another MACaddress of another portable device 110 is discoverable. Vehicletelematics unit 120 may send the updated MAC address status toapplication server 160. Application server 160 may receive the updatedMAC address status and may disassociate the driver/vehicle record. Forexample, referring to FIG. 7, application server 160 may disassociate“Driver ID 4” with “VIN 1” in record 740.

In systems and methods described herein, a driver and a fleet vehiclemay be passively or seamlessly paired based on stored association of adriver with a particular MAC address. The network device may receivecustomer input to associate a group of media access control (MAC)addresses of portable devices with driver identifiers and may store, ina memory, the MAC addresses associated with the driver identifiers. Thenetwork device may also receive, from a vehicle telematics unit, avehicle identifier of a vehicle connected to the vehicle telematics unitand a MAC address of a particular portable device. Based on the MACaddress of the particular portable device, the network device mayassociate the driver identifier and the vehicle identifier.

The systems and methods described herein may permit real-timeassociation of a driver and a fleet vehicle. The systems and methods mayenable passive detection of any Bluetooth-enabled device, such as adriver's cellular phone, so that separate driver equipment, such as RFIDcards or key fobs, is not required. Non-paired discovery of the driver'sportable device can be performed in a way that does count against a pairconnection limit and does not limit other uses of the portable device.

Various preferred embodiments have been described herein with referenceto the accompanying drawings. It will, however, be evident that variousmodifications and changes may be made thereto, and additionalembodiments may be implemented, without departing from the broader scopeof the invention as set forth in the claims that follow. Thespecification and drawings are accordingly to be regarded in anillustrative rather than restrictive sense. For example, in anotherimplementation, service network 150 may associate a MAC address and aparticular vehicle identifier. Application server 160 may provide theMAC address and driver association to, for example, user device 130.Thus, a customer may locally pair a driver identifier based on the MACaddress without having to transmit a separate driver identifier toapplication server 160.

In another implementation, vehicle telematics unit 120 may transmit avehicle identifier as part of signaling a MAC address discovery. Thus,application server 160 may match a driver to a vehicle identifier bysimply matching the discovered MAC address to previously stored MACaddress/driver association identifier.

Also, while a series of blocks has been described with respect to FIG.6, the order of the blocks may be modified in other implementations.Further, non-dependent blocks may be performed in parallel. For example,in another implementation, application server 160 may log vehicle dataassociated with a MAC address and provide particular driver associationsat a later time.

It will be apparent that different aspects of the description providedabove may be implemented in many different forms of software, firmware,and hardware in the implementations illustrated in the figures. Theactual software code or specialized control hardware used to implementthese aspects is not limiting of the invention. Thus, the operation andbehavior of these aspects were described without reference to thespecific software code—it being understood that software and controlhardware can be designed to implement these aspects based on thedescription herein.

Further, certain portions of the invention may be implemented as a“component” or “system” that performs one or more functions. Thesecomponents/systems may include hardware, such as a processor, an ASIC,or a FPGA, or a combination of hardware and software.

Even though particular combinations of features are recited in theclaims and/or disclosed in the specification, these combinations are notintended to limit the disclosure of the invention. In fact, many ofthese features may be combined in ways not specifically recited in theclaims and/or disclosed in the specification. Although each dependentclaim listed below may directly depend on only one other claim, thedisclosure of the invention includes each dependent claim in combinationwith every other claim in the claim set.

No element, act, or instruction used in the present application shouldbe construed as critical or essential to the invention unless explicitlydescribed as such. Also, as used herein, the article “a” and “one of” isintended to include one or more items. Further, the phrase “based on” isintended to mean “based, at least in part, on” unless explicitly statedotherwise.

What is claimed is:
 1. A method, comprising: receiving, by a networkdevice, customer input associating a plurality of media access control(MAC) addresses of portable devices with driver identifiers; storing, bythe network device and in a memory, the MAC addresses associated withthe driver identifiers; receiving, by the network device and from avehicle telematics unit, a vehicle identifier of a vehicle connected tothe vehicle telematics unit; receiving, by the network device and fromthe vehicle telematics unit, a MAC address of a particular portabledevice; associating, by the network device and based on the MAC addressof the particular portable device, a particular driver identifier andthe vehicle identifier; receiving, by the network device and from thevehicle telematics unit, a signal indicating that the particularportable device is no longer discoverable by the vehicle telematicsunit; and disassociating, by the network device and in response toreceiving the signal, the particular vehicle driver and the vehicleidentifier.
 2. The method of claim 1, further comprising: detecting, bythe vehicle telematics unit and via discovery protocols for a wirelesspersonal area network, the MAC address of the particular portabledevice; and sending, by the vehicle telematics unit and to the networkdevice, the detected MAC address.
 3. The method of claim 2, wherein thedetecting the MAC address of the particular portable device includes:identifying the particular portable device based on discoveryinformation provided by the particular portable device according toBluetooth protocols.
 4. The method of claim 3, wherein the detecting ofthe MAC address of the particular portable device is conducted withoutpairing the vehicle telematics unit and the particular portable device.5. The method of claim 2, wherein the sending the detected MAC addressincludes sending the MAC address via a radio access network that isdifferent than the wireless personal area network.
 6. The method ofclaim 1, wherein the associating the particular driver identifier andthe vehicle identifier includes: performing a lookup of the MAC addressand the particular driver identifier in the memory.
 7. The method ofclaim 1, further comprising: providing, by the network device, a userinterface to receive the customer input.
 8. The method of claim 7,wherein providing the user interface includes one or more of: providinga secure web-page to submit the MAC addresses of portable devices andthe driver identifiers, or providing a web-based application to submitthe MAC addresses of portable devices and the vehicle driveridentifiers.
 9. The method of claim 8, wherein the web-based applicationincludes a utility to automatically detect MAC addresses of discoverableportable devices and selectively populate the MAC addresses into theuser interface.
 10. The method of claim 1, further comprising:receiving, by the network device and from the vehicle telematics unit,vehicle activity data; and associating the vehicle activity data withthe particular driver identifier.
 11. The method of claim 1, furthercomprising: detecting that the particular portable device is no longerdiscoverable by the vehicle telematics unit; and sending, by the vehicletelematics unit, the signal indicating that the particular portabledevice is no longer discoverable by the vehicle telematics unit.
 12. Themethod of claim 11, wherein the detecting that the particular portabledevice is no longer discoverable by the vehicle telematics unit includesone or more of: detecting that a MAC address of the particular portabledevice is not available for at least a threshold period, or detectingthat a MAC address of the particular portable device is not availableand detecting another MAC address of another portable device.
 13. Themethod of claim 1, further comprising: storing, by the network device, avehicle telematics unit identifier with the vehicle identifier; andperforming, by the network device, a lookup of the vehicle identifierbased on the vehicle telematics unit identifier.
 14. A system,comprising: a vehicle telematics unit comprising: a memory to store aplurality of instructions, a first wireless transceiver to receivediscovery signals via a wireless personal area network, a secondwireless transceiver to transmit signals over a radio access networkthat is different than the wireless personal area network, and aprocessor configured to execute the instructions in the memory to:detect, via the discovery signals for the wireless personal areanetwork, a media access control (MAC) address of a portable device,send, via the radio access network, the detected MAC address, detectthat the MAC address is no longer discoverable by the vehicle telematicsunit, and send, to the one or more network devices, a signal indicatingthat the portable device is no longer discoverable by the vehicletelematics unit; and one or more network devices comprising: one or morememories to store instructions, driver identifiers, and MAC addresses,and one or more processors configured to execute the instructions in theone or more memories to: receive input associating the MAC address witha driver identifier, receive input associating a vehicle telematics unitidentifier with a vehicle identifier, receive, from the vehicletelematics unit, an indication that the MAC address has been detected bythe vehicle telematics unit, wherein the indication includes the vehicletelematics unit identifier, and associate, based on the MAC address andthe vehicle telematics unit identifier, the driver identifier and thevehicle identifier.
 15. The system of claim 14, wherein the one or moreprocessors of the one or more network devices are further configured to:store, in the one or more memories, the MAC addresses associated withthe driver identifiers, and store, in the one or more memories, thevehicle telematics unit identifier with the vehicle identifier.
 16. Thesystem of claim 15, wherein, when associating the driver identifier andthe vehicle identifier, the one or more processors of the one or morenetwork devices are further configured to: perform a lookup of thedriver identifier based on the MAC address in the one or more memories,and perform a lookup of the vehicle identifier based on the vehicletelematics unit identifier in the one or more memories.
 17. The systemof claim 14, wherein the processor of the vehicle telematics unit isfurther configured to: identify the MAC address of the portable devicebased on discovery information provided by the portable device accordingto Bluetooth protocols.
 18. The system of claim 14, wherein the one ormore processors of the one or more network devices are furtherconfigured to: provide, to a user device, a user interface to solicitthe input associating each of the MAC addresses with a driveridentifier.
 19. A vehicle telematics unit, comprising: a memory to storea plurality of instructions; a first wireless transceiver to receivediscovery signals via a wireless personal area network; a secondwireless transceiver to transmit signals over a radio access networkthat is different than the wireless personal area network; and aprocessor configured to execute the instructions in the memory to:detect, via the discovery signals for the wireless personal areanetwork, a media access control (MAC) address of a portable device,send, via the radio access network and to a network device of a fleetmanagement system, the detected MAC address, detect that the MAC addressis no longer discoverable by the vehicle telematics unit, and send, tothe network device, a signal indicating that the portable device is nolonger discoverable by the vehicle telematics unit.
 20. The vehicletelematics unit of claim 19, wherein, when detecting the MAC address ofthe portable device, the processor is further configured to execute theinstructions in the memory to: identify the MAC address of the portabledevice based on discovery information provided according to Bluetoothprotocols.